// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import FastClick from 'fastclick'

//功能函数位置
import './assets/fonts/iconfont/iconfont'

// mint ui引用
import Mint from 'mint-ui';
import './shared'

import 'mint-ui/lib/style.css'

Vue.use(Mint);

import {sync} from 'vuex-router-sync'
sync(store, router);

// css样式文件引入
require('animate.css');
import './assets/sass/main.scss';
//是否启用生产提示(主要针对debugger)
Vue.config.productionTip = false


/* eslint-disable no-new */

import Vuex from 'vuex';
import store from './store/index';
Vue.use(Vuex);

new Vue({
  el: '#app',
  store: store,
  router,
  template: '<App/>',
  components: { App },
  mounted: function () {
    FastClick.attach(document.body); // click延迟及点透问题
  }
})

//生产环境错误日志监控
// function formatComponentName(vm)
// {
//   if (vm.$root === vm) return 'root';
//
//   var name = vm._isVue ? (vm.$options && vm.$options.name) || (vm.$options && vm.$options._componentTag) : vm.name;
//   return (name ? 'component <' + name + '>' : 'anonymous component') + (vm._isVue && vm.$options && vm.$options.__file ? ' at ' + (vm.$options && vm.$options.__file) : '');
//
// }
//
// Vue.config.errorHandler = function(err, vm, info)
// {
//   var componentName = formatComponentName(vm);
//   var propsData = vm.$options && vm.$options.propsData;
//
//   fundebug.notifyError(err,
//     {
//       metaData:
//       {
//         componentName: componentName,
//         propsData: propsData,
//         info: info
//       }
//     });
// };
